package com.whminwei.edu.api.dc.dto.fspn.tch_act;

import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;
import java.util.List;

/**
 * @author zhangjq
 * @since 2024-10-25
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@JsonInclude(JsonInclude.Include.NON_NULL)
public class DcExamPlanFspn {

    private List<DcExamPlan> examPlans;

    private List<String> deleted;

    @Data
    @Builder
    @NoArgsConstructor
    @AllArgsConstructor
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public static class DcExamPlan {
        /**
         * 考试计划ID
         */
        private String examPlanId;
        /**
         * 学年
         */
        private String schoolYear;
        /**
         * 学期
         */
        private int schoolTerm;
        /**
         * 考试名称
         */
        private String examName;
        /**
         * 考试类型
         */
        private String examType;
        /**
         * 考试方式
         */
        private String examMethod;
        /**
         * 开始日期
         */
        private Date startDate;
        /**
         * 结束日期
         */
        private Date endDate;
        /**
         * 考试成绩
         */
        private List<DcExamScore> scoreList;
    }

    @Data
    @Builder
    @NoArgsConstructor
    @AllArgsConstructor
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public static class DcExamScore {
        /**
         * 学生ID
         */
        private String studentId;
        /**
         * 课程ID
         */
        private String courseId;
        /**
         * 分数
         */
        private double score;
    }
}
